package org.jflame.auth.authc;

import org.jflame.auth.authc.token.AuthToken;

/**
 * 身份认证接口
 * 
 * @author charles.zhang
 */
public interface Authenticator {

    /**
     * 身份认证,成功返回用户身份信息
     * 
     * @param authToken
     * @return
     * @throws AuthcException
     */
    SimpleAuthcInfo authenticate(AuthToken authToken) throws AuthcException;

    /**
     * 判断支持的token类型
     * 
     * @param token
     * @return
     */
    boolean supports(AuthToken token);
}
